'''
python是允许多继承的，  当子类继承父类之后，成员方法既可以重写也可以不重写
默认父类与子类在一个包下
'''

# 父类  class Dog()
# 子类 haoDog
import Dog

class Dog():
    """"  就是一个类   有属性与方法 """
    name = '程序员'
    age = 99

    def __init__(self, name, age):
        """ 初始化属性name age"""
        self.name = name
        self.age = age

def sit(self):
    """"狗蹲下方法"""
    print(self.name.title() + "is now sitting!")



class haoDog(Dog):  # haoDog 继承 Dog
    def __init__(self, name, age, sex, job):
        Dog.__init__(self, name, age)  # 子类对父类的构造方法的调用
        self.sex = sex
        self.job = job


'''
测试继承
'''
May = haoDog("May", 99, "man", "程序员")
print(f'名字: {May.name}, 年龄 {May.age},  性别： {May.sex} , 职业：{May.job}!!')




'''
多继承 (可继承多个父亲)，  C 继承A,B
'''

class A:
    def show(self):
        print('AAAA')

class B:
    def show(self):
        print('BBBB')

# 如果class A B的方法一样，  他只继承A
class C(A,B):
    pass

x = C()